home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Gigarom 1
/
Gigarom Macintosh Archives (Quantum Leap)(CDRM1080320)(1993).iso
/
FILES
/
BBS
/
MUBBS
/
MUBBS etc.cpt
/
Module Source
/
E-mail
/
EmailOnLogin.c
< prev
next >
Wrap
Text File
|
1991-11-22
|
3KB
|
102 lines
/* *********************************************************************************
MODULE: EmailOnLogin Module
DESCRIPTION: This EmailOnLogin Module is a simple module for MUBBS, the
Multi-User Bulliten Board System Software.
AUTHOR: Noam Freedman
Copyright © 1990 by Noam Freedman. Portions are also Copyright Symantec Corp.
This program source code and it's compiled version IS NOT IN THE
PUBLIC DOMAIN ! Please read the "COPYRIGHT NOTICE / NMF" file for details
regarding use of this program source code and it's compiled version.
Revision History:
============================================================
10/20/91 - Started programming
11/ 4/91 - Edited for release
============================================================
******************************************************************************** */
#define INMAIN
#include "MUBBS Module.h"
#include "Email.h"
#include <SetUpA4.h>
pascal void main (mode1,G1,P1) /* called from the main routines, and what mode to be in */
int mode1;
struct GS *G1; /* we point to the "global" struct in the Main Module here */
Ptr P1; /* we ignore this pointer, we do not use it at all */
{
Handle temph;
float version = 0.5; /* what version of MUBBS you are compatable with IE: .5 and above */
RememberA0(); SetUpA4(); /* This sets up the A4 register to access our globals */
asm { _RecoverHandle }; asm {move.l a0,temph}; HLock(temph); /* locks our module, do this ! */
G=G1; /* This MUST be the first thing you do in main only, it sets up the struct globals */
mode[u]=mode1; /* set up our mode so that you can read it anywhere */
switch (mode[u]) { /* any un-handled modes return error from this module */
case 2:
dostuff();
G->moduleresult=0;
break;
case 98:
versionck(version); /* just return after this call, don't modify anything */
break;
case 0:
strcpy (G->programmer,"Noam Freedman"); /* show the programmer's name up to 20 chars*/
G->moduleresult=0; /* this was also a init call if we need close call put 99 here */
break;
default:
G->moduleresult=1; /* return bad code */
};
HUnlock(temph); /* unlocks this module, do this ! */
RestoreA4(); /* call this when you are all done */
}
dostuff()
{
char pad[100]; /* this is a fix for a problem */
int a = 0;
int b = 0;
int num;
char pad2[100]; /* this is a fix for a problem */
struct LoadStruct S;
FILE *fp_headers;
if (!G->online[u]) { return; } /* do this check so we can log out if hang up */
module (3,"check_email",&S);
if (S.result == 21)
{
send("]You have no mail waiting.]");
return;
}
if (S.result != 0 && S.result != 20) return;
send("]*************************]");
send( "* YOU HAVE MAIL ! *]");
send( "*************************]");
if (!cmd1("]Would you like to go to the Mail Menu now (Y/N)? ") ) return;
send(G->CR[u]);
if (G->input[u] == 'Y')
{
module (2,"check_for_email",0L);
send("]]Continuing with log on...]]");
}
}